home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.5 Applications 2002 November / SGI IRIX 6.5 Applications 2002 November.iso / dev / java2v131_02_dev.idb / usr / demos / java2v131_02 / JNI-simple-test / Makefile.z / Makefile
Makefile  |  2002-06-19  |  1KB  |  59 lines

  1. #!smake
  2.  
  3. # Sample Makefile to run simple JNI test
  4. # Allows selection of ABI (o32 or n32) via variable SGI_ABI
  5. # Allows selection of thread model (green or native) via variable THREADS_TYPE
  6. # Be sure to make clean before switching between o32 and n32
  7. #
  8. # Example:
  9. #    make SGI_ABI=-n32 THREADS_TYPE=native
  10. #
  11.  
  12. # Default settings of variables (if not specified on command line)
  13.  
  14. JAVA_HOME       ?= /usr/java
  15. THREADS_TYPE    ?= green
  16. SGI_ABI         ?= -n32
  17. CLASSPATH       ?= .
  18. TOOLROOT    ?= 
  19.  
  20. # Set other variables based on those
  21.  
  22. JAVA            = $(JAVA_HOME)/bin/java
  23. JAVAC           = $(JAVA_HOME)/bin/javac
  24. JAVAH           = $(JAVA_HOME)/bin/javah
  25.  
  26. #if $(SGI_ABI) == "-n32"
  27. SUFFIX          = n32
  28. LIBDIR          = lib32
  29. #else
  30. SUFFIX          = o32
  31. LIBDIR          = lib
  32. #endif
  33.  
  34.  
  35. default: all
  36.  
  37. all:  run_$(SUFFIX)
  38.  
  39. HelloWorld.class: HelloWorld.java
  40.     $(JAVAC) HelloWorld.java
  41.  
  42. HelloWorld.h: HelloWorld.class
  43.     $(JAVAH) -jni HelloWorld
  44.  
  45. libhello.so: HelloWorld.h hello.c
  46.     @mkdir -p $(LIBDIR)
  47.     SGI_ABI=$(SGI_ABI) $(TOOLROOT)/usr/bin/cc -o $(LIBDIR)/libhello.so -shared -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/irix hello.c
  48.  
  49. run_n32: libhello.so HelloWorld.class
  50.     LD_LIBRARYN32_PATH=./$(LIBDIR) $(JAVA) $(SGI_ABI) -$(THREADS_TYPE) HelloWorld
  51.  
  52. run_o32: libhello.so HelloWorld.class
  53.     LD_LIBRARY_PATH=./$(LIBDIR) $(JAVA) $(SGI_ABI) -$(THREADS_TYPE) HelloWorld
  54.  
  55. clean clobber:
  56.     rm -rf lib32 lib
  57.     rm -rf HelloWorld.class HelloWorld.h so_locations *~
  58.  
  59.